package com.lyf.boot.modules.system.entity.vo;

import lombok.Data;

import java.io.Serial;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;

/**
 * @author Luyufan
 * @date 2023/7/6 11:21
 */
@Data
public class SysPermVo implements Serializable {

    @Serial
    private static final long serialVersionUID = -372722032813213017L;
    /**
     * 权限id
     */
    private Long permId;

    /**
     * 权限名称
     */
    private String permName;

    /**
     * 权限标识
     */
    private String permCode;

    /**
     * 路径
     */
    private String path;

    /**
     * 重定向地址
     */
    private String redirect;

    /**
     * 组件名
     */
    private String name;

    /**
     * 组件
     */
    private String component;

    /**
     * 父级权限id
     */
    private Long parentId;

    /**
     * 菜单图标
     */
    private String icon;

    /**
     * 排序值
     */
    private Integer sort;

    /**
     * 是否缓存该页面: 1:是  0:不是
     */
    private Integer keepAlive;

    /**
     * 权限类型: 0.目录 1.菜单 2.按钮
     */
    private Integer type;

    /**
     * 是否外链：0.否 1.是
     */
    private Integer linkType;

    /**
     *  外链地址
     */
    private String link;

    /**
     * iframe地址
     */
    private String iframeSrc;

    /**
     * 状态：0.正常 1.禁用
     */
    private Integer status;

    /**
     * 是否固定标签页
     */
    private Integer affixTab;

    /**
     * 固定标签页排序
     */
    private Integer affixTabOrder;

    /**
     * 是否在新窗口打开
     */
    private Integer openInNewWindow;

    /**
     * 备注
     */
    private String remark;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    private List<SysPermVo> children;
}
